package com.neusoft.yiyang.bed.service;

import com.neusoft.yiyang.common.entity.bed.Bed;
import com.neusoft.yiyang.common.entity.bed.vto.BedCustomer;
import com.neusoft.yiyang.common.entity.bed.vto.BedCustomerUsage;

import java.util.List;

public interface BedService {

    // 宫
    List<BedCustomer> getBedCustomerByFloor(Integer floor);

    void createBed(Bed bed);

    void updateBed(Bed bed);

    void deleteBed(Integer bedId);

    Bed getBedById(Integer bedId);

    List<String> getDistinctRoomsByFloor(Integer buildingNo, Integer floor);

    List<Bed> getAvailableBedsByRoom(Integer buildingNo, Integer floor, String roomNumber);

    List<Bed> getAllBeds();

    Bed getBedByParams(Integer buildingNo, Integer floor, String roomNumber, Integer bedNo);

    List<Bed> searchBeds(Integer buildingNo, Integer floor, String roomNumber);

    List<BedCustomerUsage> getAllBedCustomerUsageOutOccupied();

    Integer getBedIdByLocation(Integer buildingNo, Integer floor, String roomNumber, Integer bedNo);

    List<Integer> getFreeFloor();

    List<String> getFreeRoom(Integer floorNumber);

    List<Integer> getFreeBed(String roomNumber);

    List<Bed> getByBedIds(List<Integer> bedIds);

    List<Bed> getAllFreeBeds();

    List<BedCustomerUsage> getAllBedCutomerUsage();
}
